In modern mobile or portable devices power management has become a major issue as typically the energy sources of the mobile or portable devices have a limited capacity while the functionality of modern mobile and portable devices have increased significantly. One aspect of power management is the so-called dynamic power management DPM. By means of a dynamic power management DPM an efficient power management over a variability of applications can be provided (also less heat which means improved thermal properties and related benefits: fan-less). Through the dynamic power management the power delivered to an electronic device or an integrated circuit can be adapted to the actual workload of an application, which may vary greatly. A specific application which is executed on a hardware unit requires a certain level of workload for a certain period of time. The workload can be measured as a ratio of the execution time and the total time available to the hardware unit. The workload can also be measured as a ratio of the number of clock cycles used for the execution of the application and the total number of available clock cycles for a period. By means of a frequency and/or voltage scaling the power consumption of a hardware unit is controlled.
One feature of a good power management should be that any real-time applications is not be effected by the power management. The power management should not be affected in sense of missing any of its deadlines; in general the execution of real-time application can be affected as long as all deadlines are met. In particular, power manager by changing frequency always changes timing of a real-time application affecting it somehow. In particular an end of execution of each task comes closer to its deadline, but should not miss it. The power management can for example be performed by changing the frequency and the voltage of parts of the electronic device or the integrated circuit.
Typical applications which are performed on the electronic device may include best-effort tasks or real-time tasks. A best-effort task relates to a task that is not constrained to a deadline but is executed as fast as possible. Best-effort task may include internet browsing, file browsing, and file manipulation (copying, moving etc.) as well as office applications. For portable systems best-effort task may include picture taking and picture browsing.
A real-time task relates to a task that has deadlines, i.e. it has to be executed before a certain deadline. Here is not important whether the task is executed fast or slow as long as the deadline is met. Examples for such task may include video and audio playback.
Typically, the power management for best-effort task is to control the frequency of related hardware units like a central processing unit CPU, wherein the frequency is controlled to a maximum and kept as this level until the task has been finished.
FIG. 1 shows a representation of a workload scheme for an electronic device according to the prior art. In particular start-ups and shut-downs of several applications are depicted. The graph A relates to the start-up of a task manager, the graph B relates to a start-up of FireFox, the graph C relates to a shut-down of FireFox. The graph D relates to a start-up of LotusNotes and the graph E relates to a shut-down of LotusNotes. Accordingly, best-effort task require processing power at start-up as well as during the shut-down.
FIG. 2 shows a graph of the workload shapes of real-time applications at start-up. The graph F shows the start-up of the Windows Media Player and the graph G shows the start-up of the Windows Media Player for video playback.
The vertical scale of FIG. 1 corresponds to the workload of a processing unit like a CPU in percentages from 0-100%. The horizontal scale is in seconds. The distance between two vertical lines may correspond to 6 seconds. Approximately one peek time length is between 3 and 6 seconds. However it should be noted that the frequency and voltage changes are in the range of milliseconds.
Accordingly, the electronic devices according to the prior art are not power efficient with respect to best-effort tasks, as the frequency is kept at its maximum value for the whole start-up or shut-down procedure.